* (OSTREE_GPG_SIGNATURE_ATTR_KEY_MISSING). */
for (ii = 0; ii < n_attrs; ii++)
{
- if (attrs[ii] == OSTREE_GPG_SIGNATURE_ATTR_USER_NAME ||
+ if (attrs[ii] == OSTREE_GPG_SIGNATURE_ATTR_FINGERPRINT ||
+ attrs[ii] == OSTREE_GPG_SIGNATURE_ATTR_USER_NAME ||
attrs[ii] == OSTREE_GPG_SIGNATURE_ATTR_USER_EMAIL)
{
(void) gpgme_get_key (result->context, signature->fpr, &key, 0);
break;
case OSTREE_GPG_SIGNATURE_ATTR_FINGERPRINT:
- child = g_variant_new_string (signature->fpr);
+ if (key != NULL && key->subkeys != NULL)
+ v_string = key->subkeys->fpr;
+ else
+ v_string = signature->fpr;
+ child = g_variant_new_string (v_string);
break;
case OSTREE_GPG_SIGNATURE_ATTR_TIMESTAMP: